home *** CD-ROM | disk | FTP | other *** search
/ Die Speccy' 97 / Die Speccy' 97.iso / amiga_system / the_aminet / comm / bbs / filelister146.lha / docs / FileLister.DOC next >
Text File  |  1995-09-25  |  17KB  |  436 lines

  1.  
  2.                        Transamiga FileLister V1.46
  3.                        ---------------------------
  4.  
  5.                     written 1993-95 by Mathias Supp
  6.  
  7.           Sysop of the Amiga Inside I Line 1: ++49(0)721-854112
  8.                                       Line 2: ++49(0)721-841292
  9.                                       Line 3: ++49(0)721-841230
  10.  
  11.                 reachable via : 2:2476/539.0@fidoclassic
  12.                                 39:173/50.0@amiganet
  13.                                  s_supp@ira.uka.de
  14.  
  15.          Modem : 1. ZyXEL U-1496E Plus - 1200-19200bps [V32(bis),ZyX]
  16.                  2. Digitech SG2834    - 1200-28800bps [V32(bis),VFC,V34]
  17.                  3. Digitech SG2834    - 1200-28800bps [V32(bis),VFC,V34]
  18.                           Release : 25.09.1995
  19.  
  20. =============================== Copyright ==================================
  21.  
  22. Filelister is shareware. All rights a reserved by the author.
  23.  
  24. The test version of FileLister has no limits except of a nerv text at the
  25. start and the end of EVERY filelist call.
  26.  
  27. Shareware donation : for Germany     DM25.-
  28.                      other countries $US20.- (postal costs included)
  29.  
  30. How to register :
  31. -----------------
  32. Send the donation to the following address :
  33. Mathias Supp
  34. G÷rresstr. 29
  35. 76185 Karlsruhe
  36. Germany
  37.  
  38. or use your bank : Badische Beamtenbank
  39.                    BLZ: 66090800
  40.                    KNr: 3426580
  41.  
  42. Send me also your COMPLETE name and address.
  43.  
  44. ============================== Introduction ================================
  45.  
  46. In 1993 May, 19th I started programming a filelist replacement for Trans-
  47. amiga in Pascal. Although I have programmed an ARexx version of such a
  48. utility in the beginning of 1993, I was frustrated about the speed ARexx.
  49. Therfore I converted my first 3000 lines to Pascal.
  50.  
  51. Filelister wasn't developed to save memory ! If you haven't at least 1MB
  52. of free fast memory when TA was started you shouldn't use Filelister. As
  53. there are many possible memory configurations you have several options to
  54. waste your memory ( ;-) ) and get speed improvement.
  55.  
  56. Because of the problem of memory fragmentation on low memory machines the
  57. archive contains a little ARexx utility to check your largest free block.
  58. Dependent on this block this program resets your machine to get cleaned
  59. memory.
  60.  
  61. You need at least 18462 Bytes of Stack.
  62.  
  63. Filelister was tested with enforcer and mungwall which tells no hits !
  64.  
  65. ============================== Installation ================================
  66.  
  67. - copy FileLister or FileLister_NC to BBS:Bin/
  68.   (if you use the NoCheck version rename it to FileLister)
  69.  
  70. - copy FileLister.Cfg.Deutsch or FileLister.Cfg.English to BBS:Configs/
  71.   and rename it to FileLister.Cfg
  72.  
  73. - copy ReadFLData.0x0 depending on your system to BBS:Bin/ and rename
  74.   it to ReadFLData
  75.  
  76. - copy FreeFLData to BBS:Bin/
  77.  
  78. - look at Example.trans, duplicate it and change the ARexx commands
  79.   dependent of the wanted action (or use my examples; see later)
  80.  
  81. - copy DeleteMarks.trans to BBS:Rexx/ (sorry, german only so far :-( )
  82.  
  83. - copy FL.Help* to BBS:Text/ (ATTENTION : default = german, delete
  84.   FL.Help[.255][.ANSI] and remove ".english" from the english language
  85.   filename to get english as default
  86.  
  87. - copy #?.FL.Lang to BBS:Configs/
  88.  
  89. - copy GetFile to BBS:Bin/
  90.  
  91. - edit FileLister.Cfg at BBS:Configs and look at the descriptions of
  92.   the keywords
  93.  
  94. - edit your "File.Cmds" and set an unused character for the filelist
  95.   commands; additionally set access to 256 for this lines
  96.   Example : File.Cmds
  97.   ; ********************** *** ********
  98.   G Good-Bye (Log off)       0 --------
  99.   Q Quit to Main Menu        0 --------
  100.   H Help With Commands       5 --------
  101.   A Change Area              5 --------
  102.   K Kill File              250 --------
  103.   ~ Files in Current Area  256 --------
  104.   ~ New Files              256 --------
  105.   ~ Download File          256 --------
  106.   ~ Search File List       256 --------
  107.   M Move File              250 --------
  108.   U Upload File             10 --------
  109.   V View Archive Contents    5 --------
  110.   ~ Entire File List       256 --------
  111.   R Read Text File           5 --------
  112.   I Information on File      5 --------
  113.   ~ Browse Mode Toggle     256 --------
  114.   ~ Clear Marked Files     256 --------
  115.  
  116. - create/edit "File.Rx" and add the FileLister commands
  117.   Example : File.Rx
  118.   ; ********************** *** ******** **************************************
  119.   E list new files           5 -------- NewFiles.trans
  120.   F list files               5 -------- AllFiles.trans
  121.   S search files             5 -------- SearchFiles.trans
  122.   D download Files           5 -------- Download.trans
  123.   L delete marks             5 -------- DeleteMarks.trans
  124.  
  125. - replace all original filelist calls in your rexx programms (especially
  126.   logon.trans !)
  127.  
  128. - if you want to use TACFl, look at the archiv :-)
  129.  
  130. - more informations on "starting filelister"
  131.  
  132. =========================== Contents of Archive ============================
  133.  
  134.   - FileLister             : The programm
  135.   - FileLister_NC          : The program WITHOUT stack/subrange/...-checking
  136.                              Be carefull, because in the case of a program
  137.                              error your machine will crash surely.
  138.                              Advantage : higher execution speed
  139.   - FileLister.DOC         : This documentation
  140.   - FileLister.DOK         : German documentation without installing infos
  141.                              (sorry) and the complete history of Filelister
  142.   - FileListerTech.DOK     : Technical infos for developers
  143.                              (sorry, german only at the moment)
  144.   - History.DOC            : History since first public release
  145.   - Example.trans          : Example ARexx script how to call Filelister
  146.                              Additional the scripts for the above "File.Rx"
  147.                              - NewFiles.trans
  148.                              - AllFiles.trans
  149.                              - SearchFiles.trans
  150.                              - Download.trans
  151.   - Logoff.trans           : Necessary entries for logoff.trans
  152.   - CheckMem.Rexx          : Tests largest free memory block
  153.   - Reset                  : Does it :-)
  154.   - DeleteMarks.trans      : Script to unmark files. Will be soon replaced
  155.                              with a Pascal version.
  156.   - Upload.Trans           : Example when using "MemoryLamer NO"
  157.   - FileLister.Cfg.Deutsch : Example config for filelister with german and
  158.   - FileLister.Cfg.English   english comments.
  159.                              ALL keywords are documented. If Filelister
  160.                              doesn't find this it use an implemented
  161.                              standart config which is the same as this
  162.                              sample config.
  163.   - Deutsch.FL.Lang        : Example file for german text output
  164.   - English.FL.Lang        : Example file for english text output
  165.   - FL.Help*               : The online help texts
  166.                              Format : FL.Help[.Access][.Language][.ANSI]
  167.                              Included help texts :
  168.                              FL.Help
  169.                              FL.Help.ANSI
  170.                              FL.Help.255
  171.                              FL.Help.255.ANSI
  172.                              FL.Help.Deutsch
  173.                              FL.Help.Deutsch.ANSI
  174.                              FL.Help.255.Deutsch
  175.                              FL.Help.255.Deutsch.ANSI
  176.                              FL.Help.English
  177.                              FL.Help.English.ANSI
  178.                              FL.Help.255.English
  179.                              FL.Help.255.English.ANSI
  180.   - TACFl156.lha           : Filelist generator which can create an index
  181.                              file for Filelister and can use its memory
  182.                              when an INTERNAL sorted index was created
  183.   - MakeIndex              : Example script to create an EXTERNAL sorted
  184.                              index for Filelister. Only usefull if there is
  185.                              not anough memory to usw an INTERNAL sorted
  186.                              index. (see LOADINDEX ARexx command)
  187.   - ReadFLData.0?0         : Replacement for LOADINDEX-Command. Loads an in-
  188.                              ternal fileindex into the memory. Should be
  189.                              executed BEFORE starting any filelisters !
  190.                              Template : ReadFLData CONFIGPATH/A SHOWNEW/K
  191.                                                    NOTININDEX/K
  192.                              ATTENTION : ShowNew and NotInIndex should
  193.                              have the same values as specified in
  194.                              Filelister.Cfg !!
  195.   - FreeFLData             : deallocate memory from ReadFLData
  196.   - GetFile                : Helps you to find files very quickly when
  197.                              using an INTERNAL sorted index.
  198.                              Execution : GetFile NAME/A/M
  199.                              OS2.x+ patterns are allowed. This is version
  200.                              2.4.
  201.  
  202. ================================ Filelist ==================================
  203.  
  204.   General :
  205.   ---------
  206.  
  207.   Independent of your choise (Mark, Info) in the prompt, you can enter
  208.   one of the four possible types of file selecting :
  209.  
  210.   1. number (stays before each fileline)
  211.  
  212.   2. number range (e.g. 1-5 for selecting the files from number 1 to 5)
  213.  
  214.   3. filename (who guessed ? ;-) )
  215.  
  216.   4. pattern (OS2.x+ compatible filepattern)
  217.      Features :  * or #?  - matches all
  218.                  #x       - matches any amount of x (even 0 !)
  219.                  ?        - matches one character
  220.                  [a-d]    - matches characters a to d
  221.                  a|d      - matches a or d
  222.                  ~x       - matches unequal x
  223.      Examples : ff(99[1-9]|1000).lha => ff991.lha to ff999.lha & ff1000.lha
  224.                 recent[0-9]#[0-9]    => recent00... to recent99...
  225.  
  226.   All types of selecting can be used at one time by using "," or spaces.
  227.   e.g. : 1,xx,ff#? 5-10 "name,extension"
  228.  
  229.   In this example you can see the situation, if a file has a "," in its
  230.   name. For this case there are quotes. Characters between quotes will
  231.   be used as you write them.
  232.  
  233.  
  234.   Cursor keys
  235.   -----------
  236.  
  237.   While prompt is displayed, you can use your cursor keys to mark or
  238.   unmark certain files. Simply choose cursor up or the numeric keys
  239.   (Up,Home,End,PgUp,PgDn) to step through the screen. If there was more
  240.   than one page shown, you can go back with SHIFT+Up or the numeric key
  241.   9 and forward with SHIFT+Down or the numeric key 3.
  242.  
  243.   RETURN or SPACE marks and demarks a selected file.
  244.  
  245.   Marked files are shown with a star between the number and the filename.
  246.   So you'll see imediately which files are marked and which not.
  247.  
  248.  
  249.   Mark prompt
  250.   -----------
  251.  
  252.   Trying to mark one file twice will cause a request if you'll want to
  253.   unmark this file. Otherwise files will be listed with length and
  254.   total length of all marks. Marked files also get stars like cursor
  255.   marking does.
  256.  
  257.  
  258.   Info prompt
  259.   -----------
  260.  
  261.   Some files may have a long description that contains more informations.
  262.   1. extact length in bytes
  263.   2. uploader name
  264.   3. long description of the file (has no 40 characters limit)
  265.  
  266.   ANSI users won't loose the displayed lines above because Filelister
  267.   completes the screen after returning to the prompt.
  268.  
  269.  
  270.   Fake prompt (Co-)Sysop function
  271.   -----------
  272.  
  273.   Sometimes there may be uploads which are fakes, old in the bad case
  274.   or special wanted uploads, very new upload in the good case. This
  275.   subroutine gives you the possibility to give the user certain credits
  276.   for his upload :
  277.   - After activation you'll ask for the user's name. If
  278.     the .Desc-file contains the right name you can simply press RETURN.
  279.     Otherwise enter the name of the user.
  280.   - Faker now tells you the correct file length in bytes
  281.   - Then you can enter an integer-value (-32768 ... 32767) to be multi-
  282.     plied to the file length and added to the user's upload value.
  283.   - You get the informations of the actions (new upload value etc.)
  284.   - Because Faker sends a mail to the user when you add/subtract uploaded
  285.     bytes from him, you can enter a max. 50 characters reason for your
  286.     behaviour.
  287.   - If you entered a negative value to be multiplied to the file length,
  288.     you can immediately delete this file
  289.  
  290.  
  291.   Delete prompt (Co-)Sysop function
  292.   -------------
  293.  
  294.   Normally self documenting, but although some infos :
  295.   If you select more than one file (e.g. you enter "1-10" or a pattern)
  296.   you'll get a request for deletion for each file, except you entered
  297.   "A" for all. After "A" you can say goodbye to all selected files
  298.   Maybe you're fast anough to break with Space or CTRL+C. :-)
  299.   "Q" lets return you to the prompt.
  300.  
  301.  
  302.   Changedesc prompt (Co-)Sysop function
  303.   -----------------
  304.  
  305.   Simply changes the short description of a certain file. If there is
  306.   no downloadcounter, Filelister adds the default (Filelister.Cfg).
  307.  
  308.  
  309.   ATTENTION : If you use one of the (co-)sysop functions, changes will
  310.               be done at the lowest state (Files.BBS/directories/
  311.               .Desc-files). Filelister don't recognize these actions !
  312.               (not yet :-) ) Be carefull when using this features in a
  313.               multiline BBS.
  314.  
  315.  
  316.   Download menu
  317.   -------------
  318.  
  319.   Shows you marked files and displays a mark prompt. It has the same
  320.   function as the mark prompt in the list except of setting/unsetting
  321.   the star.
  322.  
  323. =========================== Starting Filelister ============================
  324.  
  325. Even FileLister is written in Pascal it can be made resident with
  326. "RESIDENT BBS:Bin/FileLister FORCE"
  327.  
  328. Filelister knows two parameters : BBSLINE/A/N,CONFIG/K
  329.  
  330. BBSLine : number of the BBS line
  331. Config  : name of the filelister config file
  332.           (default : BBS:Configs/FileLister.Cfg)
  333.  
  334. If you're using MEMORYLAMER NO _and_ USEINDEX YES you MUST load the index
  335. manually via ARexx. First you have to start Filelister with the linenumber
  336. as the parameter.
  337. Example :
  338. run bbs:bin/FileLister 0
  339. waitforport FILELISTER.0
  340. rx "address 'FILELISTER.0' 'LOADINDEX bbs:configs/transamiga.cfg'"
  341.                         ^ for Line 0
  342.  
  343. Do this after Transamiga was started.
  344.  
  345. ============================= ARexx commands ===============================
  346.  
  347. NEWFILES        : Call newfiles scan
  348.  
  349. ALLNEWFILES     : Call newfiles scan of all areas
  350.  
  351. AREAFILES       : Show files of the actual area
  352.  
  353. ALLFILES        : Show files of all areas
  354.  
  355. LISTFILES       : Show files and ask if list all or actual area
  356.  
  357. SEARCHFILES     : Call searchfiles scan
  358.  
  359. DOWNLOAD        : Call download routine
  360.  
  361. MARK            : Does the same as in the filelist except the screen
  362.                   outputs !
  363.                   Parameters :
  364.                   - Number (if something was lister before)
  365.                   - Pattern (ATTENTION : no break possible until done)
  366.                   - Name
  367.                   - some of the above separated by komma or space
  368.                   mit der Ausnahme, dass KEINERLEI Bildschirmausgaben
  369.                   Example :
  370.                   RX "ADDRESS 'FILELISTER.0' 'MARK ff901.lha,ff80?.lha'"
  371.  
  372. RESCAN [No]     : Deallocate memor of the last listet files. If "No" is
  373.                   given a certain area will be read again. When using
  374.                   MemoryLamer NO and PutNotInIndex is empty you MUST
  375.                   call this function after EVERY upload. (see Upload.Trans)
  376.  
  377. LOADINDEX [Cfg] : Loads ALL Files.BBS' and creates a sorted index in the
  378.                   memory. "Cfg" (=Masterconfig of TA !) should be given
  379.                   because TA doesn't give any informations about the master-
  380.                   config when it's offline. The ENV variable "TA.Index"
  381.                   was created (see FileLister_Tech)
  382.  
  383.                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  384.                   Removed since V1.3 !!!! If you try to use this command
  385.                   Filelister will tell you how to use ReadFLData :-)
  386.  
  387. QUITFILELISTER
  388. or QUIT         : remove Filelister from memory and free ARexx port
  389.  
  390. Example to quit Filelister on line 0 :
  391. RX "ADDRESS 'FILELISTER.0' 'QUITFILELISTER'"
  392.  
  393. ============================================================================
  394.  
  395. Known problems :
  396. ----------------
  397.  
  398. - some messages (from CLI-Commands) are still german
  399. - FilelisterTech.DOK not yet available in english
  400. - Filelister crashes on low stack (should be at least >25kB)
  401.  
  402. ============================================================================
  403.  
  404. Do to :
  405. -------
  406.  
  407. There are many things to do :-) If you're quiet good in german, read the
  408. german documentation for more informations.
  409.  
  410. ============================================================================
  411.  
  412. Thanks to : (in alphabetical order)
  413. -----------
  414. Daniel Baumgartl  (former beta tester)
  415. Thomas Boerkel    (beta tester)
  416. Jens Depenau      (beta tester)
  417. Michael Doerr     (shocked user :-) )
  418. Martin Eitel      (shocked user :-) )
  419. Bernd Ernesti     (shocked user :-) )
  420. Mario Jung        (former beta tester)
  421. Hartmut Meiering  (beta tester)
  422. Sami Radwan       (beta tester and TA developer)
  423. Yves Rausch       (beta tester)
  424. Mathias Supp      (for TACfl ;-) )
  425. Alexander Wiggert (shocked user :-) )
  426.  
  427. for tests, suggestions, bug report
  428.  
  429.  
  430. have fun
  431.  
  432. Mathias
  433.  
  434. P.S. : Sorry for my bad school english but I hope you understood what
  435.        I mean.
  436.